package com.gmadmin.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gmadmin.entity.SysApi;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author zhangsan
 * @since 2021-12-28
 */
@Mapper
public interface SysApiMapper extends BaseMapper<SysApi> {

    /**
     * 根据角色ids列表获取api列表
     * @param roleIds  角色ids
     * @return  api列表
     */
    List<SysApi> findListByRoleIds(@Param("roleIds") Set<Long> roleIds);

    /**
     * 根据角色id获取当前apis
     * @param roleId 角色id
     */
    List<SysApi> findListByRoleId(Long roleId);

    /**
     * 匹配地址和方法
     * @param path api地址
     * @param method api方法
     * @return  api对象
     */
    SysApi findApiByPathAndMethod(@Param("path") String path,@Param("method") String method);
}
